﻿Imports System.Globalization

Public Class LiveProgramModel

    ''' <summary>
    ''' live id
    ''' </summary>
    Private _id As Integer
    Public Property Id() As Integer
        Get
            Return _id
        End Get
        Set(ByVal value As Integer)
            _id = value
        End Set
    End Property

    ''' <summary>
    ''' 放送者名
    ''' </summary>
    ''' <remarks>Nothing のときは未取得</remarks>
    Private _caster As String
    Public Property Caster() As String
        Get
            Return _caster
        End Get
        Set(ByVal value As String)
            _caster = value
        End Set
    End Property

    Private _title As String = ""
    Public Property Title() As String
        Get
            Return _title
        End Get
        Set(ByVal value As String)
            _title = value
        End Set
    End Property

    ''' <summary>
    ''' 紹介文 全文
    ''' </summary>
    Private _content As String = ""
    Public Property Content() As String
        Get
            Return If(HasFullContent, _content, _shortContent)
        End Get
        Set(ByVal value As String)
            _content = value
        End Set
    End Property

    Private _shortContent As String = ""
    Public Property ShortContent() As String
        Get
            Return _shortContent
        End Get
        Set(ByVal value As String)
            _shortContent = value
        End Set
    End Property

    Private _visitorCount As Integer
    Public Property VisitorCount() As Integer
        Get
            Return _visitorCount
        End Get
        Set(ByVal value As Integer)
            _visitorCount = value
        End Set
    End Property

    Private _commentCount As Integer
    Public Property CommentCount() As Integer
        Get
            Return _commentCount
        End Get
        Set(ByVal value As Integer)
            _commentCount = value
        End Set
    End Property

    Private _isMemberOnly As Boolean
    Public Property IsMemberOnly() As Boolean
        Get
            Return _isMemberOnly
        End Get
        Set(ByVal value As Boolean)
            _isMemberOnly = value
        End Set
    End Property

    Private _startDateTime As DateTime
    Public Property StartDateTime() As DateTime
        Get
            Return _startDateTime
        End Get
        Set(ByVal value As DateTime)
            _startDateTime = value
        End Set
    End Property

    Private _station As StationModel
    Public Property Station() As StationModel
        Get
            Return _station
        End Get
        Set(ByVal value As StationModel)
            _station = value
        End Set
    End Property

    Private _officialTag As String = ""
    Public Property OfficialTag() As String
        Get
            Return _officialTag
        End Get
        Set(ByVal value As String)
            _officialTag = value
        End Set
    End Property

    Private _isFace As Boolean
    Public Property IsFace() As Boolean
        Get
            Return _isFace
        End Get
        Set(ByVal value As Boolean)
            _isFace = value
        End Set
    End Property

    Private _isReserved As Boolean
    Public Property IsReserved() As Boolean
        Get
            Return _isReserved
        End Get
        Set(ByVal value As Boolean)
            _isReserved = value
        End Set
    End Property

    Private _crawlingDateTime As DateTime
    Public Property CrawlingDateTime() As DateTime
        Get
            Return _crawlingDateTime
        End Get
        Set(ByVal value As DateTime)
            _crawlingDateTime = value
        End Set
    End Property

    Private _hasFullContent As Boolean
    Public Property HasFullContent() As Boolean
        Get
            Return _hasFullContent
        End Get
        Set(ByVal value As Boolean)
            _hasFullContent = value
        End Set
    End Property

End Class
